package com.xcl.service;

import com.xcl.pojo.BreakmajorityEpiboly;
import com.zzg.entity.Logistics;
import com.zzg.entity.Outsourcing;

import java.util.List;

/**
 * @ClassName XclBreakmajorityEpibolyServiceInter
 * @Description 零担外包服务层接口类
 * @Author: xiaochaolei
 * @date 2021/7/16 10:05
 * @Version 1. 0
 */
public interface XclBreakmajorityEpibolyServiceInter {
    /**
     * 得到所有的零担外包
     * @return 零担外包集合
     */
    public List<BreakmajorityEpiboly> getBreakmajorityEpibolyAll();

    /**
     * 分页查询零担外包
     * @param page 页码数
     * @param limit 条目数
     * @return 集合零担外包
     */
    public List<BreakmajorityEpiboly> getBreakmajorityEpibolyByLimit(int page, int limit);


    /**
     * 多条件查询
     * @param page 页码数
     * @param limit 条目数
     * @param sub_id 所在分站
     * @param waybill_id 运单号
     * @param arrivalCity  所在城市
     * @param consignDate 托运日期
     * @return  集合零担外包
     */
    public List<BreakmajorityEpiboly> getBreakmajorityEpibolyByWhere(
            int page,
            int limit,
            String sub_id,
            String waybill_id,
            String arrivalCity,
            String consignDate);

    /**
     * 根据id查询零担外包信息
     * @param id 运单id
     * @return 零担信息
     */
    public BreakmajorityEpiboly getBreakmajorityEpibolyById(String id);


    /**
     * 得到所有的物流承担商
     * @return 物流承担商集合
     */
    public List<String> getLogisticsAll();

    /**
     * 根据id得到承担商信息
     * @param id 承担商id
     * @return 承担商信息
     */
    public Logistics getLogisticsById(String id);


    /**
     * 查询外包单号是否存在
     * @param outsourcingOrder 外包单号
     * @return 外包信息
     */
    public Outsourcing getOutsourcingByOutsourcingOrder(double outsourcingOrder);


    public  int insertElseRpiboly(Logistics logistics, Outsourcing outsourcing, String location, String id);
}
